package com.example.myapplication

import android.os.Bundle
import android.view.Gravity
import android.view.View
import android.widget.Button
import android.widget.LinearLayout
import android.widget.TextView
import androidx.appcompat.app.AppCompatActivity

// 你的包名可能不同，这一行不要动

class MainActivity : AppCompatActivity() {
    // 定义一个变量来记录当前语言状态
    private var currentLanguage = 0 // 0:英文, 1:中文, 2:法语

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        // 设置窗口标题为你的姓名和学号
        setTitle("李杰_2023110509")

        // 1. 创建一个线性布局（垂直方向）
        val mainLayout = LinearLayout(this)
        mainLayout.setOrientation(LinearLayout.VERTICAL)
        mainLayout.setGravity(Gravity.CENTER)
        mainLayout.setLayoutParams(
            LinearLayout.LayoutParams(
                LinearLayout.LayoutParams.MATCH_PARENT,
                LinearLayout.LayoutParams.MATCH_PARENT
            )
        )

        // 2. 创建显示Hello World的文本框
        val helloText = TextView(this)
        helloText.setId(View.generateViewId())
        helloText.setText("Hello World!") // 默认显示英文
        helloText.setTextSize(24f)
        val textParams = LinearLayout.LayoutParams(
            LinearLayout.LayoutParams.WRAP_CONTENT,
            LinearLayout.LayoutParams.WRAP_CONTENT
        )
        textParams.setMargins(0, 0, 0, 50) // 下边距50px
        helloText.setLayoutParams(textParams)

        // 3. 创建按钮 - 这里先使用文字，后面再换图片
        val switchButton = Button(this)
        switchButton.setText("Switch Language")
        switchButton.setOnClickListener(object : View.OnClickListener {
            override fun onClick(v: View?) {
                // 点击按钮时切换语言
                currentLanguage = (currentLanguage + 1) % 3 // 在0,1,2之间循环

                // 根据currentLanguage的值改变helloText显示的文字
                when (currentLanguage) {
                    0 -> {
                        helloText.setText("Hello World!")
                        switchButton.setBackgroundResource(R.drawable.flag_en)
                    }

                    1 -> {
                        helloText.setText("你好，世界！")
                        switchButton.setBackgroundResource(R.drawable.flag_cn)
                    }

                    2 -> {
                        helloText.setText("Bonjour le monde!")
                        switchButton.setBackgroundResource(R.drawable.flag_fr)
                    }
                }
            }
        })

        // 4. 把文本框和按钮添加到线性布局中
        mainLayout.addView(helloText)
        mainLayout.addView(switchButton)

        // 5. 最关键的一步：将我们代码创建的布局设置为Activity的视图
        setContentView(mainLayout)
    }
}